#pragma once
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
#include <stdbool.h>

typedef int datatype;
typedef struct DLNode
{
	datatype data;
	struct DLNode* next;
	struct DLNode* pre;
}DLNode;

void DLFrontPrint(DLNode* ptr);
void DLBackPrint(DLNode* ptr);
bool IsEmpty(DLNode* ptr);
DLNode* DLInit();
void DLDestroy(DLNode* phead);
void DLPushBack(DLNode* ptr,datatype x);
void DLPushFront(DLNode* ptr,datatype x);
void DLPopBack(DLNode* ptr);
void DLPopFront(DLNode* ptr);
void DLInsert(DLNode* ptr, datatype x);
void DLErase(DLNode* phead,DLNode* ptr);
DLNode* DLFind(DLNode* ptr, datatype x);


